package main

import "fmt"

func main()  {
	//作业1.求1+2!+3!+...+20!的和 
	//先把1-20输出
	var num = 0
	for i:=1;i<=20;i++{
		//fmt.Println(i)
		t:=1
		for j:=1;j<=i;j++{ //每个数阶乘，总数给t存起来
			t=t*j
		}
		//fmt.Println()
		num=num+t //t拿到上面每个数相乘的总数后存到num中，num只累加，从不初始化值

	}
	fmt.Println(num) //最后把num的值输出

	var index,sum=1,1
	for i:=1;i<=20;i++{
		index=index*i //保存每一项的阶乘
		sum=sum+index //加上每一项的阶乘
	}
	fmt.Print(sum)
}